<?php

class Distributivo_Model extends CI_Model {

    function grabarDistributivo($parameters) {
        $insert = array(
            "ide_lec" => $parameters['ide_lec'],
            "ide_mat" => $parameters['ide_mat'],
            "ide_doc" => $parameters['ide_doc'],
            "seccion" => $parameters['seccion'],
            "paralelo" => $parameters['paralelo'],
            "estado" => $parameters['estado'],
            "eliminado" => 0);
        $this->db->insert("distributivo", $insert);
    }

    function actualizarDistributivo($parameters) {
        $update = array("ide_doc" => $parameters['ide_doc'],
            "estado" => $parameters['estado']);
        $this->db->where("ide_lec", $parameters['ide_lec']);
        $this->db->where("ide_mat", $parameters['ide_mat']);
        $this->db->where("seccion", $parameters['seccion']);
        $this->db->where("paralelo", $parameters['paralelo']);


        $this->db->update("distributivo", $update);
    }

    function eliminarDistributivo($parameters, $ide_doc) {
        $update = array("eliminado" => 1);
        $this->db->where("ide_lec", $parameters['ide_lec']);
        $this->db->where("ide_mat", $parameters['ide_mat']);
        $this->db->where("seccion", $parameters['seccion']);
        $this->db->where("paralelo", $parameters['paralelo']);
        $this->db->where("ide_doc", $parameters['ide_doc']);

        $this->db->update("distributivo", $update);
    }

    function getDatosCarrera($ide) {
        $this->db->where('ide_car', $ide);
        $this->db->where('eliminado_car', 0);
        $query = $this->db->get('carrera');
        if ($query->num_rows() > 0) {
            foreach ($query->result_array() as $row) {
                $data[] = $row; //$row;
            }
        }
        $query->free_result();
        return $data;
    }

    function getExisteDistributivo($parameters) {
        $this->db->where($parameters);
        $query = $this->db->get('distributivo');
        if ($query->num_rows() > 0)
            return true;
        else
            return false;
    }

    function getDatosDistributivo($ide_lec, $ide_car, $ide_pen, $ide_ciclo, $seccion, $par, $ide_mat) {
        $this->db->select('ciclos.ide_cic,ciclos.codigo_cic, ciclos.nombre_cic, materia.codigo_mat
         , materia.nombre_mat, materia.creditos_mat, persona.apellido_pers, persona.nombre_pers,
         distributivo.ide_mat,distributivo.ide_doc,distributivo.estado,persona.ide_pers');
        $this->db->distinct();
        $this->db->from('carrera');
        $this->db->join('pensum', 'carrera.ide_car = pensum.ide_car', 'inner');
        $this->db->join('ciclos', 'pensum.ide_pen = ciclos.ide_pen', 'inner');
        $this->db->join('materia', 'ciclos.ide_cic = materia.ciclos_ide_cic', 'inner');
        $this->db->join('distributivo', 'distributivo.ide_mat = materia.ide_mat', 'inner');
        $this->db->join('docente', 'distributivo.ide_doc = docente.ide_doc', 'inner');
        $this->db->join('persona', 'docente.persona_ide_pers = persona.ide_pers', 'inner');
        $this->db->where('distributivo.ide_lec', $ide_lec);
        $this->db->where('carrera.ide_car', $ide_car);
        $this->db->where('pensum.ide_pen', $ide_pen);
        $this->db->where('ciclos.ide_cic', $ide_ciclo);
        $this->db->where('distributivo.seccion', $seccion);
        $this->db->where('distributivo.paralelo', $par);
        if (!empty($ide_mat))
            $this->db->where('distributivo.ide_mat ', $ide_mat);

        $this->db->where('distributivo.eliminado', 0);
        $this->db->order_by("distributivo.seccion");
        $this->db->order_by("distributivo.paralelo");
        $this->db->order_by("materia.codigo_mat");
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            foreach ($query->result_array() as $row) {
                $data[] = $row; //$row;
            }
            $query->free_result();
            return $data;
        } else {
            return null;
        }
    }
        function getDatosDistributivoVarios($ide_lec, $ide_car, $ide_pen, $ide_ciclo, $seccion) {
        $this->db->select('ciclos.ide_cic,ciclos.codigo_cic, ciclos.nombre_cic, materia.codigo_mat
         , materia.nombre_mat, materia.creditos_mat, persona.apellido_pers, persona.nombre_pers,
         distributivo.ide_mat,distributivo.ide_doc,distributivo.estado,persona.ide_pers');
        $this->db->distinct();
        $this->db->from('carrera');
        $this->db->join('pensum', 'carrera.ide_car = pensum.ide_car', 'inner');
        $this->db->join('ciclos', 'pensum.ide_pen = ciclos.ide_pen', 'inner');
        $this->db->join('materia', 'ciclos.ide_cic = materia.ciclos_ide_cic', 'inner');
        $this->db->join('distributivo', 'distributivo.ide_mat = materia.ide_mat', 'inner');
        $this->db->join('docente', 'distributivo.ide_doc = docente.ide_doc', 'inner');
        $this->db->join('persona', 'docente.persona_ide_pers = persona.ide_pers', 'inner');
        $this->db->where('distributivo.ide_lec', $ide_lec);
        $this->db->where('carrera.ide_car', $ide_car);
        $this->db->where('pensum.ide_pen', $ide_pen);
        $this->db->where('ciclos.ide_cic between 1 and '.$ide_ciclo);
        $this->db->where('distributivo.seccion', $seccion);
        //$this->db->where('distributivo.paralelo', $par);
        

        $this->db->where('distributivo.eliminado', 0);
        $this->db->order_by("ciclos.codigo_cic","desc");
        $this->db->order_by("distributivo.seccion");
        //
        $this->db->order_by("materia.codigo_mat");
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            foreach ($query->result_array() as $row) {
                $data[] = $row; //$row;
            }
            $query->free_result();
            return $data;
        } else {
            return null;
        }
    }

}

